package org.springblade.modules.repair.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.modules.repair.entity.MaintainMalfunctionWork;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.HashMap;
import java.util.List;


/**
 * @Description
 * @Author ysq 新增维修工单VO
 * @Date 2021/5/25
 **/
@Data
@ApiModel(value = "RepairWorkVO对象", description = "新增维修工单")
public class RepairWorkVO {
	private static final long serialVersionUID = 1L;

	@ApiModelProperty("来源id")
	private Long fromPlanId;

	@ApiModelProperty("工单id")
	private Long planId;

	/**
	 * 电梯id
	 */
	@NotNull(message = "电梯id不能为空")
	@ApiModelProperty(value = "电梯id")
	private Long elevatorId;

	@ApiModelProperty(value = "故障类型，2：维修，3：困人")
	private Integer typeStatus;

	/**
	 * 故障图片
	 */
	@TableField(typeHandler = JacksonTypeHandler.class)
	@ApiModelProperty(value = "故障图片和视频")
	private List<HashMap<String,String>>  mfImgUrl;

	/**
	 * 故障描述
	 */
	@ApiModelProperty(value = "故障描述")
	private String mfDesc;


	@ApiModelProperty(value = "电梯状态： 1-正常,2-停梯")
	private Integer elevatorStop;

	@ApiModelProperty(value = "故障地点")
	private String address;

	@ApiModelProperty(value = "分配人员ids")
	private  List<Long> userIds;

	@ApiModelProperty(value = "上级ids")
	private List<String> parentUserIds;

	private String problemItem;

	@ApiModelProperty("故障现象其他描述")
	private String problemOtherDesc;

	/**
	 * 紧急程度
	 */
	private Integer emerProcType;

	/**
	 * 工单类型
	 */
	private Integer workOrderType;

	private List<MaintainMalfunctionWork> works;

	/**
	 * 来源 对应工单id
	 */
	private Integer sourcePlanType;

	/**
	 *  计划完成时间
	 */
	private Date planFinishDate;

	/**
	 *  预计达到时间
	 */
	private Date planArriveDate;


	private Long buildingId;

	@ApiModelProperty(value = "告警id")
	private Long rescueNoticeId;
}
